iT邦幫忙

2022 iThome 鐵人賽

DAY 28
0

今天要來介紹AJAX,AJAX是甚麼呢!AJAX 全名是「Asynchronous JavaScript and XML」,當我們需要網頁與後端取得資料進行溝通時,就需要用到他,那有沒有發現他的英文名子最前面的單字與我們前幾篇講到的async很相似呢? 沒錯,AJAX也是利用JS非同步技術達成,這樣前端網頁才能與後端進行互動!

那我們要開始進行跟後端溝通時,需要了解到如何溝通,怎麼運作的才能夠使用他。
第一步:
我們要溝通時,要了解到跟誰溝通,後端會有一個API網址,那這個網址代表我前端要向後端發送請求的位置,我們稱API接口,而不同的網址代表我們前端不同的請求,請求的種類有很多,而當API網址與請求方法都正確時,後端才會有正確的回應。
第二步:
當網頁端發送請求時,新增或取得資源都由網頁端這邊發送,依據不同的需求發送不同的方法請求,這時候伺服器端就會看我們所發送的類型,給我們對應的內容。
第三步:
伺服器收到請求後,與資料庫取得需要的資料進行過濾,返回給網頁端。

那我們一直不斷地提到向後端發送請求,那究竟有哪些請求可以發送呢?

請求方法

這邊要注意,我們的API接口及請求方法,都要是正確的,後端才能進行回應,就像你不可能去麥當勞想要點滷肉飯,那他也做不出來給你。
請求方法:

  • GET:直接向後端請求需要的資料,不會給後端任何的資料,伺服器根據請求的API接口給予回應。
  • POST:向後端發送資料,例如登入時會有帳號密碼、註冊時也會需要輸入許多的資訊,傳送給後端連結資料庫將資料記起來,將改變後的結果回應回來。
  • PUT:向後端取代所指定項目的資源,例如我們在修改密碼時,用於完整更新資料,後端回傳更新後的結果。
  • PATCH:向後端更新資源,與PUT不同時在於部分資源更新。一樣後端回傳更新的結果。
  • DELETE:刪除特定的資源。後端回傳刪除後的結果。

接下來我們就要實際串接看看這個例子!

發送請求範例

我們參考jsonplaceholder服務,具有公開API說明文件:https://jsonplaceholder.typicode.com/guide/ ,擁有基本發送的請求(新增、修改、刪除),而我們的axios會使用到之前promise裡面的方法.then,.catch去做撰寫,因為本身axios就是一個非同步的行為,接下來我們就實際看看吧!
記得要先將axios cdn 引入:https://cdnjs.cloudflare.com/ajax/libs/axios/0.20.0/axios.min.js

axios.get('https://jsonplaceholder.typicode.com/posts/1')
  .then((res) => {
    console.log(res);
});

上訴可以看到我們利用axios去get我們所說的API接口,再用promise的方法.then()去串接回傳的結果,接下來就可以打開控制台觀看回傳的資料了!

參考資料:https://www.casper.tw/development/2020/09/30/about-ajax/
那今天的介紹就到這邊了,明天再讓我們一起努力吧。


上一篇
Day27 Javascript async與await
下一篇
Day29 Javascript web API
系列文
Javascripts惡補小教室30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言